package mx.com.asteca.persistencia.entidades;
// Generated 31/07/2013 11:41:38 AM by Hibernate Tools 3.2.1.GA


import java.util.Date;
import java.util.HashSet;
import java.util.Set;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * Familia generated by hbm2java
 */
@Entity
@Table(name="familia"
    ,catalog="astecadb"
)
public class Familia  implements java.io.Serializable {


     /**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private int idFam;
     private String conyugueNombre;
     private Date conyugueFechaNac;
     private String hijo1Nombre;
     private Date hijo1FechaNac;
     private String hijo2Nombre;
     private Date hijo2FechaNac;
     private String padreNombre;
     private Date padreFechaNac;
     private String madreNombre;
     private Date madreFechaNac;
     private Set<Alumnos> alumnoses = new HashSet<Alumnos>(0);

    public Familia() {
    }

	
    public Familia(int idFam) {
        this.idFam = idFam;
    }
    public Familia(int idFam, String conyugueNombre, Date conyugueFechaNac, String hijo1Nombre, Date hijo1FechaNac, String hijo2Nombre, Date hijo2FechaNac, String padreNombre, Date padreFechaNac, String madreNombre, Date madreFechaNac, Set<Alumnos> alumnoses) {
       this.idFam = idFam;
       this.conyugueNombre = conyugueNombre;
       this.conyugueFechaNac = conyugueFechaNac;
       this.hijo1Nombre = hijo1Nombre;
       this.hijo1FechaNac = hijo1FechaNac;
       this.hijo2Nombre = hijo2Nombre;
       this.hijo2FechaNac = hijo2FechaNac;
       this.padreNombre = padreNombre;
       this.padreFechaNac = padreFechaNac;
       this.madreNombre = madreNombre;
       this.madreFechaNac = madreFechaNac;
       this.alumnoses = alumnoses;
    }
   
     @Id 
     @GeneratedValue(strategy=GenerationType.IDENTITY)
    @Column(name="ID_FAM", unique=true, nullable=false)
    public int getIdFam() {
        return this.idFam;
    }
    
    public void setIdFam(int idFam) {
        this.idFam = idFam;
    }
    
    @Column(name="CONYUGUE_NOMBRE", length=50)
    public String getConyugueNombre() {
        return this.conyugueNombre;
    }
    
    public void setConyugueNombre(String conyugueNombre) {
        this.conyugueNombre = conyugueNombre;
    }
    @Temporal(TemporalType.DATE)
    @Column(name="CONYUGUE_FECHA_NAC", length=10)
    public Date getConyugueFechaNac() {
        return this.conyugueFechaNac;
    }
    
    public void setConyugueFechaNac(Date conyugueFechaNac) {
        this.conyugueFechaNac = conyugueFechaNac;
    }
    
    @Column(name="HIJO_1_NOMBRE", length=50)
    public String getHijo1Nombre() {
        return this.hijo1Nombre;
    }
    
    public void setHijo1Nombre(String hijo1Nombre) {
        this.hijo1Nombre = hijo1Nombre;
    }
    @Temporal(TemporalType.DATE)
    @Column(name="HIJO_1_FECHA_NAC", length=10)
    public Date getHijo1FechaNac() {
        return this.hijo1FechaNac;
    }
    
    public void setHijo1FechaNac(Date hijo1FechaNac) {
        this.hijo1FechaNac = hijo1FechaNac;
    }
    
    @Column(name="HIJO_2_NOMBRE", length=50)
    public String getHijo2Nombre() {
        return this.hijo2Nombre;
    }
    
    public void setHijo2Nombre(String hijo2Nombre) {
        this.hijo2Nombre = hijo2Nombre;
    }
    @Temporal(TemporalType.DATE)
    @Column(name="HIJO_2_FECHA_NAC", length=10)
    public Date getHijo2FechaNac() {
        return this.hijo2FechaNac;
    }
    
    public void setHijo2FechaNac(Date hijo2FechaNac) {
        this.hijo2FechaNac = hijo2FechaNac;
    }
    
    @Column(name="PADRE_NOMBRE", length=50)
    public String getPadreNombre() {
        return this.padreNombre;
    }
    
    public void setPadreNombre(String padreNombre) {
        this.padreNombre = padreNombre;
    }
    @Temporal(TemporalType.DATE)
    @Column(name="PADRE_FECHA_NAC", length=10)
    public Date getPadreFechaNac() {
        return this.padreFechaNac;
    }
    
    public void setPadreFechaNac(Date padreFechaNac) {
        this.padreFechaNac = padreFechaNac;
    }
    
    @Column(name="MADRE_NOMBRE", length=50)
    public String getMadreNombre() {
        return this.madreNombre;
    }
    
    public void setMadreNombre(String madreNombre) {
        this.madreNombre = madreNombre;
    }
    @Temporal(TemporalType.DATE)
    @Column(name="MADRE_FECHA_NAC", length=10)
    public Date getMadreFechaNac() {
        return this.madreFechaNac;
    }
    
    public void setMadreFechaNac(Date madreFechaNac) {
        this.madreFechaNac = madreFechaNac;
    }
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="familia")
    public Set<Alumnos> getAlumnoses() {
        return this.alumnoses;
    }
    
    public void setAlumnoses(Set<Alumnos> alumnoses) {
        this.alumnoses = alumnoses;
    }




}


